/*
 * XML Type:  TextType
 * Namespace: http://www.data-archive.ac.uk/dext/schema/draft
 * Java type: uk.da.dext.TextType
 *
 * Automatically generated - do not modify.
 */
package uk.da.dext.impl;
/**
 * An XML TextType(@http://www.data-archive.ac.uk/dext/schema/draft).
 *
 * This is a complex type.
 */
public class TextTypeImpl extends org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements uk.da.dext.TextType
{
    private static final long serialVersionUID = 1L;
    
    public TextTypeImpl(org.apache.xmlbeans.SchemaType sType)
    {
        super(sType);
    }
    
    private static final javax.xml.namespace.QName LINEPARAM$0 = 
        new javax.xml.namespace.QName("http://www.data-archive.ac.uk/dext/schema/draft", "lineParam");
    private static final javax.xml.namespace.QName CHARACTERPARAM$2 = 
        new javax.xml.namespace.QName("http://www.data-archive.ac.uk/dext/schema/draft", "characterParam");
    private static final javax.xml.namespace.QName ID$4 = 
        new javax.xml.namespace.QName("", "id");
    private static final javax.xml.namespace.QName SRC$6 = 
        new javax.xml.namespace.QName("", "src");
    
    
    /**
     * Gets the "lineParam" element
     */
    public uk.da.dext.LineParamType getLineParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            uk.da.dext.LineParamType target = null;
            target = (uk.da.dext.LineParamType)get_store().find_element_user(LINEPARAM$0, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "lineParam" element
     */
    public boolean isSetLineParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(LINEPARAM$0) != 0;
        }
    }
    
    /**
     * Sets the "lineParam" element
     */
    public void setLineParam(uk.da.dext.LineParamType lineParam)
    {
        synchronized (monitor())
        {
            check_orphaned();
            uk.da.dext.LineParamType target = null;
            target = (uk.da.dext.LineParamType)get_store().find_element_user(LINEPARAM$0, 0);
            if (target == null)
            {
                target = (uk.da.dext.LineParamType)get_store().add_element_user(LINEPARAM$0);
            }
            target.set(lineParam);
        }
    }
    
    /**
     * Appends and returns a new empty "lineParam" element
     */
    public uk.da.dext.LineParamType addNewLineParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            uk.da.dext.LineParamType target = null;
            target = (uk.da.dext.LineParamType)get_store().add_element_user(LINEPARAM$0);
            return target;
        }
    }
    
    /**
     * Unsets the "lineParam" element
     */
    public void unsetLineParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(LINEPARAM$0, 0);
        }
    }
    
    /**
     * Gets the "characterParam" element
     */
    public uk.da.dext.CharacterParamType getCharacterParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            uk.da.dext.CharacterParamType target = null;
            target = (uk.da.dext.CharacterParamType)get_store().find_element_user(CHARACTERPARAM$2, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "characterParam" element
     */
    public boolean isSetCharacterParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(CHARACTERPARAM$2) != 0;
        }
    }
    
    /**
     * Sets the "characterParam" element
     */
    public void setCharacterParam(uk.da.dext.CharacterParamType characterParam)
    {
        synchronized (monitor())
        {
            check_orphaned();
            uk.da.dext.CharacterParamType target = null;
            target = (uk.da.dext.CharacterParamType)get_store().find_element_user(CHARACTERPARAM$2, 0);
            if (target == null)
            {
                target = (uk.da.dext.CharacterParamType)get_store().add_element_user(CHARACTERPARAM$2);
            }
            target.set(characterParam);
        }
    }
    
    /**
     * Appends and returns a new empty "characterParam" element
     */
    public uk.da.dext.CharacterParamType addNewCharacterParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            uk.da.dext.CharacterParamType target = null;
            target = (uk.da.dext.CharacterParamType)get_store().add_element_user(CHARACTERPARAM$2);
            return target;
        }
    }
    
    /**
     * Unsets the "characterParam" element
     */
    public void unsetCharacterParam()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(CHARACTERPARAM$2, 0);
        }
    }
    
    /**
     * Gets the "id" attribute
     */
    public java.lang.String getId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ID$4);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "id" attribute
     */
    public org.apache.xmlbeans.XmlID xgetId()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlID target = null;
            target = (org.apache.xmlbeans.XmlID)get_store().find_attribute_user(ID$4);
            return target;
        }
    }
    
    /**
     * Sets the "id" attribute
     */
    public void setId(java.lang.String id)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ID$4);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(ID$4);
            }
            target.setStringValue(id);
        }
    }
    
    /**
     * Sets (as xml) the "id" attribute
     */
    public void xsetId(org.apache.xmlbeans.XmlID id)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlID target = null;
            target = (org.apache.xmlbeans.XmlID)get_store().find_attribute_user(ID$4);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlID)get_store().add_attribute_user(ID$4);
            }
            target.set(id);
        }
    }
    
    /**
     * Gets the "src" attribute
     */
    public java.lang.String getSrc()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(SRC$6);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "src" attribute
     */
    public org.apache.xmlbeans.XmlIDREF xgetSrc()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlIDREF target = null;
            target = (org.apache.xmlbeans.XmlIDREF)get_store().find_attribute_user(SRC$6);
            return target;
        }
    }
    
    /**
     * Sets the "src" attribute
     */
    public void setSrc(java.lang.String src)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(SRC$6);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(SRC$6);
            }
            target.setStringValue(src);
        }
    }
    
    /**
     * Sets (as xml) the "src" attribute
     */
    public void xsetSrc(org.apache.xmlbeans.XmlIDREF src)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlIDREF target = null;
            target = (org.apache.xmlbeans.XmlIDREF)get_store().find_attribute_user(SRC$6);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlIDREF)get_store().add_attribute_user(SRC$6);
            }
            target.set(src);
        }
    }
}
